package com.xmindguoguo.boot.modular.system.model;

import java.io.Serializable;
import java.util.Date;

import com.baomidou.mybatisplus.annotations.TableField;
import com.baomidou.mybatisplus.annotations.TableId;
import com.baomidou.mybatisplus.annotations.TableName;
import com.baomidou.mybatisplus.enums.IdType;

import lombok.Data;

/**
 * 
 *
 * @author xmind-果果
 * @Date 2018-12-10 17:09
 */
@Data
@TableName("t_system_menu")
public class TSystemMenuModel implements Serializable {

    private static final long serialVersionUID = 1L;

    /**
     * 主键id
     * 
     */
    @TableId(value = "id", type = IdType.INPUT)
    private Long id;

    /**
     * 菜单父id
     * 
     */
    @TableField(value = "pId")
    private Long pId;

    /**
     * 当前菜单的所有父菜单编号
     * 
     */
    @TableField(value = "pIds")
    private String pIds;

    /**
     * 菜单名称
     * 
     */
    @TableField(value = "name")
    private String name;

    /**
     * 菜单图标
     * 
     */
    @TableField(value = "menuIcon")
    private String menuIcon;

    /**
     * url地址
     * 
     */
    @TableField(value = "reqUrl")
    private String reqUrl;

    /**
     * 菜单排序号
     * 
     */
    @TableField(value = "orderNum")
    private Integer orderNum;

    /**
     * 菜单层级
     * 
     */
    @TableField(value = "levels")
    private Integer levels;

    /**
     * 菜单类型 0菜单 1不是菜单
     * 
     */
    @TableField(value = "menuType")
    private Integer menuType;

    /**
     * 备注
     * 
     */
    @TableField(value = "tips")
    private String tips;

    /**
     * 0无需登录，1需要登录无需权限，2需要登录需要权限
     * 
     */
    @TableField(value = "type")
    private Integer type;

    /**
     * 状态(0：启用 -1：删除）
     * 
     */
    @TableField(value = "status")
    private Integer status;

    /**
     * 创建时间
     * 
     */
    @TableField(value = "createTime")
    private Date createTime;

    /**
     * 更新时间
     * 
     */
    @TableField(value = "updateTime")
    private Date updateTime;

    /**
     * 创建人id
     * 
     */
    @TableField(value = "createUserId")
    private Long createUserId;

    /**
     * 更新人id
     * 
     */
    @TableField(value = "updateUserId")
    private Long updateUserId;
    /**
     * ztree 选中字段
     */
    @TableField(exist = false)
    private boolean checked;

}
